/*
 * SimulatedeAnnealing.h
 *
 *  Created on: Feb 25, 2013
 *      Author: lfelipe
 */

#ifndef SIMULATEDEANNEALING_H_
#define SIMULATEDEANNEALING_H_

#include "../Entity/Layer.h"
#include "../Entity/Instance.h"
#include "../Entity/Circuit.h"

class SimulatedeAnnealing
{
public:
    SimulatedeAnnealing();
    virtual ~SimulatedeAnnealing();

    Layer execute(Circuit & circuit_reference, Instance & instance,int num_iterations);
    double get_polarization_error(Layer & layer, Circuit & circuit_reference, Instance & instance);
};

#endif /* SIMULATEDEANNEALING_H_ */
